Network storage systems have grown in importance with the growth in the storage needs of enterprise and Internet computer systems. Dedicated storage area networks (SAN) and network attached storage (NAS) file servers have been proposed as alternative approaches for handling increasing computer storage needs.
Storage area networks use block-level semantics. Storage devices such as RAID (Redundant Array of Independent/Inexpensive Disks) devices are connected to various hosts over a dedicated storage network employing a block-level protocol such as Fibre Channel. SANs are typically very efficient for storing large amounts of data. At the same time, the SAN storage approach requires building a dedicated network, which may not be cost-effective if the amount of data to be stored is not sufficiently large.
NAS file servers employ file-level semantics to communicate with their corresponding hosts. The computer hosts are typically connected to one or more NAS file servers over a conventional Ethernet local area network (LAN). The storage operations share the general bandwidth available over the LAN, and thus may slow down the non-storage LAN traffic. The NAS file server receives file-level data from the hosts, and generates the block-level commands needed by the storage devices attached locally to the NAS file server. NAS does not require building a relatively expensive separate network dedicated to storage. At the same time, the performance of NAS systems is often inferior to that of dedicated SANs, particularly for storing large amounts of data.
SAN and NAS have been typically viewed as alternative storage approaches. The same network cannot typically handle efficiently both file-level and block-level data. Thus, system users desiring to use both SAN and NAS usually employ separate networks and associated storage devices for each storage approach.